#pragma once

#include "Dream/Core/PlatformDetection.h"

#ifdef DM_PLAT_WIN
	#ifndef NOMINMAX
// See github.com/skypjack/entt/wiki/Frequently-Asked-Questions#warning-c4003-the-min-the-max-and-the-macro
	#define NOMINMAX
	#endif
#endif

#include <cstdint>
#include <functional>
#include <fstream>
#include <memory>
#include <sstream>
#include <string>
#include <utility>

#include <glm/glm.hpp>

#include "Dream/Core/Log.h"

#include "Dream/Debug/Instrumentor.h"